// pages/cloud/cloud.js
const db = wx.cloud.database(); // 初始化数据库
Page({
  /**
   * 页面的初始数据
   */
  data: {
    images: [],
  },
  insert: function () {
    // console.log('00');
    // db.collection('user').add({
    //   data: {
    //     name: '王果果',
    //     age: 22
    //   },
    //   success:res =>{
    //     console.log(res);
    //   },
    //   fail:err =>{
    //     console.log(err);

    //   }
    // })
    db.collection("user")
      .add({
        data: {
          name: "叶小文",
          age: 18,
        },
      })
      .then((res) => {
        console.log(res);
      })
      .catch((err) => {
        console.log(err);
      });
  },
  update() {
    db.collection("user")
      .doc("9fb344b15f018891005e37863100851a")
      .update({
        data: {
          age: 28,
        },
      })
      .then((res) => {
        console.log(res);
      })
      .catch((err) => {
        console.log(err);
      });
  },
  search() {
    db.collection("user")
      .where({
        name: "叶小文",
      })
      .get()
      .then((res) => {
        console.log(res);
      })
      .catch((err) => {
        console.log(err);
      });
  },
  delete() {
    db.collection("user")
      .doc("9fb344b15f018891005e37863100851a")
      .remove()
      .then((res) => {
        console.log(res);
      })
      .catch((err) => {
        console.log(err);
      });
  },
  bedelete() {
    wx.cloud
      .callFunction({
        name: "beachDelete",
      })
      .then((res) => {
        console.log(res);
      })
      .catch((err) => {
        console.log(err);
      });
  },
  sum() {
    wx.cloud
      .callFunction({
        name: "sum",
        data: {
          a: 2,
          b: 3,
        },
      })
      .then((res) => {
        console.log(res);
      })
      .catch((err) => {
        console.log(err);
      });
  },
  login() {
    wx.cloud
      .callFunction({
        name: "login",
      })
      .then((res) => {
        console.log(res);
      })
      .catch((err) => {
        console.log(err);
      });
  },
  //---
  upload() {
    wx.chooseImage({
      count: 1,
      sizeType: ["original", "compressed"],
      sourceType: ["album", "camera"],
      success(res) {
        // tempFilePath可以作为img标签的src属性显示图片
        const tempFilePaths = res.tempFilePaths;
        // console.log(tempFilePaths);
        wx.cloud.uploadFile({
          cloudPath: new Date().getTime() + ".png", // 上传至云端的路径
          filePath: tempFilePaths[0], // 小程序临时文件路径
          success: (res) => {
            // 返回文件 ID
            // console.log(res.fileID);
            db.collection("images")
              .add({
                data: {
                  name: res.fileID,
                },
              })
              .then((res) => {
                console.log(res);
              })
              .catch((err) => {
                console.log(err);
              });
          },
          fail: console.error,
        });
      },
    });
  },
  getFile() {
    // 获取登陆者的信息
    wx.cloud.callFunction({
      name: "login",
      complete: (res) => {
        // 根据openid查询图片
        db.collection("images")
          .where({
            _openid: res.result.openid,
          })
          .get()
          .then((res) => {
            // console.log(res);
            this.setData({
              images: res.data,
            });
          })
          .catch((err) => {
            console.log(err);
          });
      },
    });
  },
  // 下载图片
  dowload(event) {
    // console.log(event.currentTarget.dataset.fileid);
    wx.cloud.downloadFile({
      fileID: event.currentTarget.dataset.fileid, // 文件 ID // 此处的fileID不可以更改。
      success: (res) => {
        // 返回临时文件路径
        // console.log(res, "000");
        // 保存图片到手机相册
        wx.saveImageToPhotosAlbum({
          filePath: res.tempFilePath,
          success(res) {
            wx.wx.showToast({
              title: "保存成功",
              icon: "none",
              duration: 1500,
              mask: false,
            });
          },
        });
      },
      fail: console.error,
    });
  },
  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {},

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {},

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {},

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {},

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {},

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {},

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {},

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {},
});
